Advances in plasma processing have facilitated growth in the semiconductor industry. To create semiconductor devices, a process module has long been employed to perform substrate processing. Since semiconductor devices are usually delicate devices that may be proned to error, sensors may be attached to the process module to collect data for fault detection, identification of endpoints, and/or troubleshooting.
Consider the situation wherein, for example, a recipe is being executed in a plasma processing system. FIG. 1 shows a conceptual diagram illustrating how sensors may interact with a process module and how the sensors may utilize the process module for processing and coordination. A simplified processing environment may include a processing chamber 100 connected to a process module 102, which is connected to a plurality of sensors (104, 106, 108, and 110). Usually, data collected by each sensor may be uploaded to process module 102. In an example, data collected by the various sensors may be sent to process module 102 via a network path (e.g., ethernet path 112). Plurality of sensors 104, 106, 108, and 110 may be manufactured by different manufacturing companies. Accordingly, the plurality of sensors may most likely collect data at different time domains and may be unable to communicate with one another.
In recent years, the trend has been moving toward a feedback type of automated process control. Accordingly, more timely data is being required in order to detect endpoints, perform fault detection, and to perform troubleshooting. As a result, the number of sensors being added to the plasma processing system has increased as more data is needed for processing. Although the increased number of sensors may be able to provide the software controlled process module with more data to perform its task, the increased volume of data that may be exchanged between the sensors and the process module may actually cause a drain on overall processing. In an example, the network path may become congested as the sensors compete with one another to send data to the process module. In another example, since process module 102, whose function is to manage substrate processing, is usually not designed to handle a massive inundation of data coming from a plurality of sensors, process module 102 may experience latency issue that may negatively impact the process module's main function of controlling substrate processing.
Furthermore, process module 102 may not have the processing capability and/or the memory capacity to handle unlimited number of sensors. In an example, another sensor module needs to be attached to the process module in order to provide additional detail. However, due to the processing power limitation and the memory capacity, process module 102 may not be able to handle another sensor. Accordingly, process module 102 may have to divert its limited resources from managing substrate processing to handling the additional sensor. In addition, latency may become a problem resulting in the process module being unable to handle the additional strain on its resources and may ultimately crash.
Besides storing the data from the plurality of sensors, process module 102 may also be employed to analyze the data. However, the analysis task may not only divert limited resources from the task of managing substrate processing, but may also require process module 102 to have access to the various different parts of a recipe that may be stored at the individual sensor. Unfortunately, the process module usually does not have access to these different parts of the recipe and may be unable to do a proper analysis of the data received.
In an example, a change has been made to the part of the recipe stored on sensor 104. In order to accommodate the change, the engineer may have to update the different modules (e.g., the sensor, the process module, etc.) with the change. In the likelihood that the change may not have been accounted for in one or more modules, the execution of the recipe may generate defective devices. In analyzing the data to determine the problem, process module 102 may need to be aware of the change in the recipe in order to perform a proper analysis. If the recipe is not readily available, the process module may either have to perform an incomplete analysis of the data or may have to retrieve the recipe from the sensor thereby expending unnecessary processing power to access the required data, thereby causing unnecessary data traffic congestion on a limited network pipeline
In addition, “bad data” collected by a sensor may also impact the performance of process module 102. In an example, sensor 106 may have been damaged and as a result, have collected ‘bad data”. When the data is uploaded to process module 102, the data may be utilized by process module 102 thereby negatively affecting substrate processing and may even negatively impact the other sensors.
In addition to processing the large amount of data that may be uploaded from the various sensors, process module 102 may also be responsible for integrating the data and coordinating the interaction between sensors. Each of the sensors may be unique with different data collection criteria. In an example, sensor 104 may collect data every 50 microseconds, whereas sensor 106 may collect data every 100 microseconds. Due to the differences between the sensors, such as data collection timing difference, the sensors are usually unable to communication with one another and may have to employ the process module to facilitate the exchange. Thus, the process module may be required to have the intelligence to handle these types of request.
Unfortunately, the process module may not always be able to handle the request, since the process module may not be able to integrate the data from the different sources. In an example, data from sensors 104 and 106 are collected at different time interval. To be able to integrate the data such that sensor 104 may be able to utilize the data collected by sensor 106, process module 102 may need the intelligence to match up the two sets of data. However, process module 102 may not have the processing power to handle such a complex operation. Also, integrating the two sets of data may be virtually impossible given that the data have been collected at different time domains.
Process module 102 has been originally created to manage substrate processing. Accordingly, process module 102 may not have the memory resource or the processing power to handle the additional task of data storage, data processing, data coordination, and the likes. As a result, the processing and memory capability of process module 102 may be stretched. As the number of sensors attached to process module 102 grows, process module 102 may become a bottleneck as the process module tries to accommodate the demands from the various different sensors while trying to manage the processing chamber. Thus, the process module may begin to experience increased latency, may be unable to react quickly to changing execution environment, and may even experience a total shutdown.